#define _CRT_SECURE_NO_WARNINGS 1
//#include <stdio.h>
//int main()
//{
//	int a[10 + 1] = { 0 };
//	char c[] = { '\x10','\xa','\8' };
//	int i = 0;
//	for (i = 0; i < 3; i++)
//	{
//		printf("%c", c[i]);
//	}
//	return 0;
//}
//
//int* printNumbers(int n, int* returnSize)
//{
//    int ret = 1;
//    while (n--)
//    {
//        ret *= 10;
//    }
//    int i = 0;
//    static int a[100000];
//    for (i = 1; i < ret; i++)
//    {
//        a[i - 1] = i;
//    }
//    *returnSize = --i;
//    return a;
//}
#include <stdio.h>

int main()
{
    int year, mon, day;
    scanf("%d %d %d", &year, &mon, &day);
    int ret = day;
    mon -= 1;
    if (mon == 0)
    {
        printf("%d", ret);
        return 0;
    }
    switch (mon - mon + 1)
    {
    case 1:
        ret += 31;
        if (mon == 1)
            break;
    case 2:
        if ((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0))
            ret += 29;
        else
            ret += 28;
        if (mon == 2)
            break;
    case 3:
        ret += 31;
        if (mon == 3)
            break;
    case 4:
        ret += 30;
        if (mon == 4)
            break;
    case 5:
        ret += 31;
        if (mon == 5)
            break;
    case 6:
        ret += 30;
        if (mon == 6)
            break;
    case 7:
        ret += 31;
        if (mon == 7)
            break;
    case 8:
        ret += 31;
        if (mon == 8)
            break;
    case 9:
        ret += 30;
        if (mon == 9)
            break;
    case 10:
        ret += 31;
        if (mon == 10)
            break;
    case 11:
        ret += 30;
        if (mon == 11)
            break;
    case 12:
        ret += 31;
        if (mon == 12)
            break;

    }
    printf("%d", ret);
    return 0;
}